package br.ifpi.leds.sgi.entidades.contatos;

import java.util.ArrayList;
import java.util.List;

public class Contato {
	
		private Long id;
       
        /**
         * email de contato
         */
        private String email;
       
        /**
         * lista de telefones do contato
         */
        private List<Telefone> telefones;

        /**
         *
         */
        private List<Endereco> enderecos;

        /**
         * @param email
         * @param telefones
         * @param enderecos
         */
        public Contato(String email) {
               
                this.email = email;
                this.enderecos = new ArrayList<Endereco>();
                this.telefones = new ArrayList<Telefone>();
                
        }
        
        public Contato() {
        	this.enderecos = new ArrayList<Endereco>();
            this.telefones = new ArrayList<Telefone>();
        }

        /**
		 * @return the id
		 */
		public Long getId() {
			return id;
		}



		/**
		 * @param id the id to set
		 */
		public void setId(Long id) {
			this.id = id;
		}



		/**
         * @return the email
         */
        public String getEmail() {
                return email;
        }

        /**
         * @param email the email to set
         */
        public void setEmail(String email) {
                this.email = email;
        }

       
        
        /**
		 * @return the telefones
		 */
		public List<Telefone> getTelefones() {
			return telefones;
		}

		/**
		 * @param telefones the telefones to set
		 */
		public void setTelefones(List<Telefone> telefones) {
			this.telefones = telefones;
		}

		/**
		 * @return the enderecos
		 */
		public List<Endereco> getEnderecos() {
			return enderecos;
		}

		/**
		 * @param enderecos the enderecos to set
		 */
		public void setEnderecos(List<Endereco> enderecos) {
			this.enderecos = enderecos;
		}

		public void adicionarendereco(Endereco endereco){
        	
        	if(checarEndereco()){
        		enderecos.add(endereco);
        	}else{
        		System.out.println("erro");
        	}
        	
        }
        
        public boolean checarEndereco(){
        	int size = getEnderecos().size();
        	
        	if(size < 2){
        		return true;
        	}else{
        		return false;
        	}
        	
        }
        
        public void adicionarTelefone(Telefone telefone){
        	
        	if(checarTelefone()){
        		telefones.add(telefone);
        	}else{
        		System.out.println("erro");
        	}
        	
        }
        
        public boolean checarTelefone(){
        	int size = getTelefones().size();
        	
        	if(size < 3){
        		return true;
        	}else{
        		return false;
        	}
        	
        }
        
        @Override
        public String toString() {
                return "Contato \nEmail=" + getEmail() + ", \nTelefones=" + getTelefones()
                                + ", \nEnderecos=" + getEnderecos() + "";
        }
       
       
}
